home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Collection of Tools & Utilities
/
Collection of Tools and Utilities.iso
/
edit
/
la002.zip
/
CBX266.EXE
/
ADA.LNG
next >
Wrap
Text File
|
1989-05-13
|
6KB
|
230 lines
?≡ <>
compilation-unit
≡statements statement
statements
?statement
null-statement
assignment-statement
procedure-call-statement
exit-statement
return-statement
goto-statement
entry-call-statement
delay-statement
abort-statement
raise-statement
code-statement
if-statement
case-statement
loop-statement
block-statement
accept-statement
select-statement
≡if-statement if condition then
statement
statements
elsif condition then
statement
statements
else
statement
statements
end if;
≡loop-statement loop
statement
statements
end loop;
≡procedure-call-statement procedure-name actual-parameter-part
≡actual-parameter-part ( parameter-association , parameter-association )
≡parameter-association formal-parameter => actual-parameter
≡assignment-statement variable-name := expression;
?expression
relation
relation and relation
relation and then relation
relation or relation
relation or else relation
relation xor relation
?relation
simple-expression
simple-expression relational-operator simple-expression
simple-expression not in range
simple-expression not in type-mark
?simple-expression
term
unary-adding-operator term
term binary-adding-operator term
uary-adding-operator term binary-adding-operator term
?term
factor
factor multiplying-operator factor
?factor
primary
primary ** primary
abs primary
not primary
?primary
numeric-literal
null
aggregate
string-literal
name
allocator
function-call
type-conversion
qualified-expression
( expression )
≡function-call function-name actual-parameter-part
?compilation-unit
context-clause library-unit
context-clause secondary-unit
?library-unit
subprogram-specification
package-declaration
generic-declaration
generic-instantiation
subprogram-body
?subprogram-specification
procedure identifier formal-part
function designator formal-part return type-mark
≡subprogram-body subprogram-specification is
declarative-part
begin
statement
statements
exception
exception-handler
exception-handlers
end designator
≡declarative-part basic-declarative-items
later-declarative-items
≡basic-declarative-items basic-declarative-item
basic-declarative-items
?basic-declarative-item
basic-declaration
representation-clause
use-clause
?basic-declaration
object-declaration
number-declaration
type-declaration
subtype-declaration
subprogram-declaration
generic-declaration
task-declaration
generic-declaration
exception-declaration
generic-instantiation
renaming-declaration
deferred-constant-declaration
?object-declaration
identifier-list : constant subtype-indication := expression;
identifier-list : constant constrained-array-definition := expression;
≡context-clause with-clause use-clause
context-clause
≡with-clause with package-name , package-name;
≡use-clause use package-name , package-name;
≡block-statement declare
declarative-part
begin
statement
statements
exception
exception-handler
exception-handlers
end
≡exception-handler when exception-choice exception-choices =>
statements
≡exception-handlers exception-handler
exception-handlers
≡exception-choices | exception-choice exception-choices
?exception-choice
exception-name
others
≡exit-statement exit when condition;
?type-declaration
full-type-declaration
incomplete-type-declaration
private-type-declaration
≡full-type-declaration type identifier discriminant-part is type-definition
?type-definition
enumeration-type-definition
integer-type-definiton
real-type-definition
array-type-definition
record-type-definition
access-type-definition
derived-type-definition
≡record-type-definition record
component-list
end record;
?component-list
component-declarations
component-declarations variant-part
null
≡component-declaration identifier-list : component-subtype-definition := expression;
≡component-declarations identifier-list : component-subtype-definition := expression;
component-declarations
≡variant-part case discriminant-simple-name is
variant
variants
end case;
≡variant when choice choices =>
component-list
≡choices | choice choices
≡component-subtype-definition subtype-indication
≡subtype-indication type-mark constraint
?type-mark
type-name
subtype-name
?constraint
range-constraint
floating-point-constraint
fixed-point-constraint
index-constraint
discriminant-constraint
≡constrained-array-definition array index-constraint of component-subtype-indication
≡index-constraint ( discrete-range discrete-ranges )
≡discrete-ranges , discrete-range discrete-ranges
≡discrete-range discrete-subtype-indication range
?range
range-attribute
simple-expression .. simple-expression
≡number-declaration identifier-list : constant := universal-static-expression
≡package-declaration package-specification ;
≡package-specification package identifier is
basic-declarative-item
private
basic-declarative-item
end package-simple-name
≡subprogram-declaration subprogram-specification ;
?subprogram-specification
procedure identifier formal-part
function designator formal-part return type-mark
≡formal-part ( parameter-specification parameter-specifications )
≡parameter-specifications parameter-specification , parameter-specifications
≡parameter-specification identifier-list : mode type-mark := expression
?mode
in
out
in out
?later-declarative-item
body
subprogram-declaration
package-declaration
task-declaration
generic-declaration
use-clause
generic-instantiation
≡exception-declaration identifier-list : exception;
≡incomplete-type-declaration type identifier discriminant-part ;
?private-type-declaration
type identifier discriminant-part is limited private;
type identifier discriminant-part is private;
?body
subprogram-body
package-body
task-body
body-stub